約 2,576,429 件
https://w.atwiki.jp/mtgwiki/pages/309.html
《Curse of the Fire Penguin》 (炎ペンギンの呪い) #whisper クリーチャーが別物になってしまうエンチャント(クリーチャー)。 そのクリーチャーが死んでも他のクリーチャーに移ってしまう。まさに呪い。 「乗っ取って混乱させる」というのが分かりにくいが、エンチャントされたクリーチャーのカードの下半分の部分が、このカードの下半分に上書きされるということである。 つまり、 6/5のクリーチャー・タイプがペンギン(Penguin)であるクリーチャーになる。 エキスパンション・シンボルがアンヒンジドのものになる。 トランプルと「このクリーチャーが場から墓地に置かれたとき、Curse of the Fire Penguinをあなたの墓地から場に戻す。」という能力だけを持つ。 イラストレーターがMatt Thompsonになる。 コレクター番号が73/140になる。 ということである。 カード名やマナ・コストやイラストや色は変わらない。 「乗っ取って」とあるが、コントロールが移るわけではない。 クリーチャーの生け贄が必要な6マナ6/5というのも、対戦相手のファッティを6/5まで縮小させるのもなんだか微妙・・・ これは反転カードではないし、反転カードとは一切関係が無い。 クリーチャーが場から墓地以外(手札やゲーム外)に行った場合は、これは場に戻らない。 墓地から場に戻ろうとしたときにエンチャントできるクリーチャーが場にいないのなら、墓地に留まる。そうでないのなら、場にいるクリーチャーに必ずエンチャントしなくてはいけない。 墓地から場に戻るのは対象をとっていない。そのため対象にならないクリーチャーにもエンチャントできる(もちろん、プロテクション(赤)を持つクリーチャーのような、エンチャントできないクリーチャーにつけることはできない)。 Curse of the Fire Penguinが場に戻るのは混乱させられているクリーチャーの能力であるため、本来なら「このクリーチャーが場から墓地に置かれたとき、このクリーチャーを混乱させていたCurse of the Fire Penguinという名前のカードをあなたの墓地から場に戻す。」と書かれるべきである気もする。 参考 カード個別評価:Unglued系
https://w.atwiki.jp/ocw_reading/pages/6.html
MIT OpenCourseWare > 6.170 Laboratory in Software Engineering, Fall 2001 > 6.170 Laboratory in Software Engineering Lecture 1 MIT OpenCourseWare 6.170 Laboratory in Software Engineering, Fall 2001, Lecture 1 Introduction のまとめ ラジオの方では vol.1 にあたりました。Lecture Noteを読むときの助けにしてください。 6.170 Laboratory in Software Engineering, Fall 2001のLecture NoteのPDFはこちら (※2006年4月16日現在、上記講義は6.170 Laboratory in Software Engineering, Fall 2005にアップデートされたようですが、PDFはまだ拾うことができます。) 1.1 What 6170 s About このコースの主な単元 オブジェクト指向プログラミング オブジェクト指向のソフトウェアデザイン ソフトウェア開発の演習(ネットラジオでは対象外とします) このコースで身につくもの ソフトウェアのデザイン 抽象化のメカニズムやパターンを以下に上手に実現するか、デザインの表現 Javaによる実装 dependable, flexibleなソフトウェアの実現 重要なのはデザインに重点を置いていることで、プログラミングは前提知識。 また、hackingすることが目的ではない。 ローレベルのコーダーではなくアーキテクトになる デバッグに時間をかけない 1.2 Admin Policies 講義資料 (ただしこのネットラジオでは2つ目のlecture notesのみ使い、残りはDJの力量でカバーしていきます……多分) course text Liskov, Barbara. Program Development in Java Abstraction, Specification, and Object-Oriented Design. Reading, MA Addison-Wesley, 2001. ISBN 0201657686. lecture notes usually published the day of the lecture ‘Gang of Four’design patterns book recommended ‘Effective Java’by Bloch recommended Javaのチュートリアル 1.3 Why Software Engineering Matters ソフトウェアエンジニアリングの、主に社会的な重要性。 1996年の調査では ソフトウェアは輸出黒字最上位 $24Bを輸出し$4Bが輸入($20Bの黒字) 他の産業では… agriculture 26-14-12, aerospace 11-3-8, chemicals 26-19-7, vehicles 21-43-(22), manufactured goods 200-265-(64) (元資料 Software Conspiracy, Mark Minasi, McGraw Hill, 2000). ソフトウェアの役割はインターネットだけではなくtransportation, energy, medicine, financeなどにまで。たとえば車には10から100のプロセッサが載っていて、ブレーキからオーディオまで関わっている。 購入のコストはゼロに近づいているが、維持のコストが多くかかっている。 開発の失敗、アクシデント、質の低いソフトウェアなど。 1.3.1 Development failures 開発の失敗例の分類 IBM survey, 1994 55%のシステムがオーバーコスト 68%がスケジュールをオーバー 88%が実質的に再デザイン Advanced Automation System (FAA, 1982-1994) 業界平均は$100/行だが, 本来は$500/行ぐらいかかっている 結局$700-900/行ぐらい払っている $6Bの仕事が無駄になっている Bureau of Labor Statistics (1997) 新しいシステムは6個中2個はキャンセルされてる 最大のシステムのキャンセル割合は50% スケジュールオーバーが50% 3/4のシステムが運用に失敗 1.3.2 Accidents アクシデントについて。 “The most likely way for the world to be destroyed, most experts agree, is by accident. That’s where we come in. We’re computer professionals. We cause accidents.” Nathaniel Borenstein, inventor of MIME,in Programming as if People Mattered Friendly Programs, Software Engineering and Other Noble Delusions, Princeton University Press, Princeton, NJ, 1991. アクシデントの例。 Therac-25 (1985-87) ‘interpretation of beam block data by software’ was a factor http //sunnyday.mit.edu/therac-25.html http //www.fda.gov/cdrh/ocd/panamaradexp.html Ariane-5 (June 1996) It’s quite rare for bugs in the code to be the cause; usually, the problem goes back to the requirements analysis, (テキストの参照先がデッドリンク) London Ambulance Service (1992) really a managerial one. they made the terrible mistake of trying to go online abruptly, without running the new and old systems together for a while. http //www.cs.ucl.ac.uk/staff/A.Finkelstein/las.html PITAC report, Information Technology Research Investing in Our Future “The demand for software has grown far faster than our ability to produce it. Furthermore, the Nation needs software that is far more usable, reliable, and powerful than what is being produced today. We have become dangerously dependent on large software systems whose behavior is not well understood and which often fail in unpredicted ways.” 1.3.3 Software Quality ソフトウェアの質を計る1つの基準はバグ数/kloc。 デリバー後にわかる 業界平均は10 1以下なら高品質 Praxis CDIS system (1993)の例 0.75 defects/klocだった 1.4 Why Design Matters この授業では‘hacking code’がソフトウェア作りの全てではなく、コードを語るより良い方法が必要であることを示す。 ソフトウェアデザイン者の心得 予め考える(安いし) 最後に品質を上げようと考えてはいけない チームワークが可能な権限委譲をする 駄目なデザインはユーザーに影響する 駄目なデザインは開発者に影響する 1.4.1 The Netscape Story solid designに基づいてIE3を作ったMSとデザインに注意を払わなくて手遅れになったNetscapeの失敗例 1.5 Advice Course strategy don’t get behind pace is fast! attend lectures material is not all in textbook think in advance don’t rush to code de-sign, not de-bug today s visitor: - total visitor: -
https://w.atwiki.jp/opengl/pages/183.html
距離による光の減衰です。 vertex.shader //フラグメントシェーダーに渡す変数 varying vec3 P;//位置ベクトル varying vec3 N;//法線ベクトル void main(void) { P = vec3(gl_ModelViewMatrix * gl_Vertex); N = normalize(gl_NormalMatrix * gl_Normal); gl_Position = ftransform(); } flagment.shader //頂点シェーダーから受け取る変数 varying vec3 P;//位置ベクトル varying vec3 N;//法線ベクトル void main(void) { vec3 L = gl_LightSource[0].position.xyz - P; float d = length(L);//光源までの距離 //減衰計数 float attenuation = 1.0 / (gl_LightSource[0].constantAttenuation + gl_LightSource[0].linearAttenuation * d + gl_LightSource[0].quadraticAttenuation * d * d ); L = normalize(L); N = normalize(N); vec4 ambient = gl_FrontLightProduct[0].ambient; float dotNL = dot(N, L); vec4 diffuse = gl_FrontLightProduct[0].diffuse * max(0.0, dotNL); vec3 V = normalize(-P); vec3 H = normalize(L + V); float powNH = pow(max(dot(N, H), 0.0), gl_FrontMaterial.shininess); if(dotNL = 0.0) powNH = 0.0; vec4 specular = gl_FrontLightProduct[0].specular * powNH; //統合 gl_FragColor = ambient + diffuse + specular; //減衰率を乗じる gl_FragColor *= attenuation; } GLSL.h #pragma once #include stdio.h //GLSLクラス class GLSL{ public GLuint ShaderProg; GLuint VertexShader, FragmentShader; void ReadShaderCompile(GLuint Shader, const char *File);//shader fileを読み込みコンパイルする void Link( GLuint Prog );//リンクする void InitGLSL(const char *VertexFile);//GLSLの初期化 void InitGLSL(const char *VertexFile, const char *FragmentFile);//GLSLの初期化 void ON();//シェーダー描画に切り替え void OFF();//シェーダー解除 ~GLSL(); }; void GLSL ReadShaderCompile(GLuint Shader, const char *File){ FILE *fp; char *buf; GLsizei size, len; GLint compiled; fopen_s( fp,File, rb ); if(!fp) printf( ファイルを開くことができません %s\n , File); fseek(fp, 0, SEEK_END); size = ftell(fp); buf = (GLchar *)malloc(size); if (buf == NULL) { printf( メモリが確保できませんでした \n ); } fseek(fp, 0, SEEK_SET); fread(buf, 1, size, fp); glShaderSource(Shader, 1, (const GLchar **) buf, size); free(buf); fclose(fp); glCompileShader(Shader); glGetShaderiv( Shader, GL_COMPILE_STATUS, compiled ); if ( compiled == GL_FALSE ) { printf( コンパイルできませんでした!! %s \n , File); glGetProgramiv( Shader, GL_INFO_LOG_LENGTH, size ); if ( size 0 ) { buf = (char *)malloc(size); glGetShaderInfoLog( Shader, size, len, buf); printf(buf); free(buf); } } } void GLSL Link( GLuint Prog ){ GLsizei size, len; GLint linked; char *infoLog ; glLinkProgram( Prog ); glGetProgramiv( Prog, GL_LINK_STATUS, linked ); if ( linked == GL_FALSE ){ printf( リンクできませんでした!! \n ); glGetProgramiv( Prog, GL_INFO_LOG_LENGTH, size ); if ( size 0 ){ infoLog = (char *)malloc(size); glGetProgramInfoLog( Prog, size, len, infoLog ); printf(infoLog); free(infoLog); } } } void GLSL InitGLSL(const char *VertexFile){ GLenum err = glewInit(); if (err != GLEW_OK) { printf( Error %s\n , glewGetErrorString(err)); } printf( VENDOR= %s \n , glGetString(GL_VENDOR)); printf( GPU= %s \n , glGetString(GL_RENDERER)); printf( OpenGL= %s \n , glGetString(GL_VERSION)); printf( GLSL= %s \n , glGetString(GL_SHADING_LANGUAGE_VERSION)); VertexShader = glCreateShader(GL_VERTEX_SHADER); ReadShaderCompile(VertexShader, VertexFile); ShaderProg = glCreateProgram(); glAttachShader(ShaderProg, VertexShader); glDeleteShader(VertexShader); Link(ShaderProg); } void GLSL InitGLSL(const char *VertexFile, const char *FragmentFile){ GLenum err = glewInit(); if (err != GLEW_OK) { printf( Error %s\n , glewGetErrorString(err)); } printf( VENDOR= %s \n , glGetString(GL_VENDOR)); printf( GPU= %s \n , glGetString(GL_RENDERER)); printf( OpenGL= %s \n , glGetString(GL_VERSION)); printf( GLSL= %s \n , glGetString(GL_SHADING_LANGUAGE_VERSION)); VertexShader = glCreateShader(GL_VERTEX_SHADER); FragmentShader = glCreateShader(GL_FRAGMENT_SHADER); ReadShaderCompile(VertexShader, VertexFile); ReadShaderCompile(FragmentShader, FragmentFile); ShaderProg = glCreateProgram(); glAttachShader(ShaderProg, VertexShader); glAttachShader(ShaderProg, FragmentShader); glDeleteShader(VertexShader); glDeleteShader(FragmentShader); Link(ShaderProg); } void GLSL ON(){ glUseProgram(ShaderProg); } void GLSL OFF(){ glUseProgram(0); } GLSL ~GLSL(){ glDeleteProgram(ShaderProg); } main.cpp #pragma comment(linker, /SUBSYSTEM WINDOWS /ENTRY mainCRTStartup ) #pragma comment(lib, glew32.lib ) #include GL/glew.h #include GL/freeglut/freeglut.h #include GLSL.h #include math.h #define PAI 3.141592f #define WIDTH 640 #define HEIGHT 480 GLSL glsl; //回転用 float anglex = 0.0f; //ライトの位置 GLfloat lightpos[] = { 0.0, 4.0, 0.0, 1.0 }; float Ambient[] = {0.2f, 0.1f, 0.2f, 1.0f}; float Diffuse[] = {0.8f, 0.0f, 0.0f, 1.0f}; float Specular[]= { 0.4f, 0.4f, 0.4f, 1.0f};//鏡面反射 float AmbientLight[] = { 1.0f, 1.0f, 1.0f, 1.0f}; float DiffuseLight[] = { 0.7f, 0.7f, 0.7f, 1.0f}; float SpecularLight[] = {1.0f, 1.0f, 1.0f, 1.0f};//鏡面光 float pos[] = {-0.7f, 2.0f, 0.0f};//位置 float constAtt = 1.0; float linearAtt = 0.0; float quadraAtt = 0.0; //影のマテリアル float shadowDiffuse[] = {0.0f,0.0f,0.0f,0.3f};//影の拡散光 float shadowSpecular[] = {0.0f,0.0f,0.0f,1.0f};//影の鏡面光 void draw(bool flag){ if(flag) { glMaterialfv(GL_FRONT,GL_AMBIENT_AND_DIFFUSE,shadowDiffuse); glMaterialfv(GL_FRONT,GL_SPECULAR,shadowSpecular); }else{ glMaterialfv(GL_FRONT,GL_AMBIENT,Ambient); glMaterialfv(GL_FRONT,GL_DIFFUSE,Diffuse); glMaterialfv(GL_FRONT,GL_SPECULAR,Specular); glMaterialf(GL_FRONT,GL_SHININESS,8); } glPushMatrix(); glTranslatef(pos[0], pos[1], pos[2]); glRotatef( anglex, 1.0f, 0.0f, 0.0f);//x軸回転 glutSolidCube(1.0); glPopMatrix(); } void drawFloor(float widthX, float widthZ, int nx, int nz){ int i, j; //Floor1枚当たりの幅 float wX = widthX / (float)nx; float wZ = widthZ / (float)nz; float diffuse[][4] = { { 0.9f, 0.9f, 0.9f, 1.0f}, { 0.1f, 0.1f, 0.1f, 1.0f} }; float ambient[] = { 0.2f, 0.2f, 0.2f, 1.0f}; float specular[]= { 0.5f, 0.5f, 0.5f, 1.0f}; glMaterialfv(GL_FRONT,GL_AMBIENT,ambient); glMaterialfv(GL_FRONT,GL_SPECULAR,specular); glMaterialf(GL_FRONT,GL_SHININESS,10); glNormal3d(0.0, 1.0, 0.0); glPushMatrix(); for (j = 0; j nz; j++) { float z1 = -widthZ / 2.0f + wZ * j; float z2 = z1 + wZ; for (i = 0; i nx; i++) { float x1 = -widthX / 2.0f + wX * i; float x2 = x1 + wX; glMaterialfv(GL_FRONT, GL_DIFFUSE, diffuse[(i + j) 1]); glBegin(GL_QUADS); glVertex3d(x1, 0.0, z1); glVertex3d(x1, 0.0, z2); glVertex3d(x2, 0.0, z2); glVertex3d(x2, 0.0, z1); glEnd(); } } glPopMatrix(); } void CalcShadowMat(float* mat){ float ex, ey, ez;//光源の方向 float s; //object中心から光源までの距離 float x, y, z; x = lightpos[0] - pos[0]; y = lightpos[1] - pos[1]; z = lightpos[2] - pos[2]; //光源の方向ベクトル s = sqrt(x * x + y * y + z * z); ex = x / s; ey = y / s; ez = z / s; //shadow matrix mat[0] = ey; mat[1] = 0.0f; mat[2] = 0.0f; mat[3] = 0.0f; mat[4] = -ex; mat[5] = 0.0f; mat[6] = -ez; mat[7] = 0.0f; mat[8] = 0.0f; mat[9] = 0.0f; mat[10] = ey; mat[11] = 0.0f; mat[12] = 0.0f; mat[13] = 0.001f * ey; mat[14] = 0.0f; mat[15] = ey; } void drawShadow(){ float mat[16]; glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); glDepthMask(GL_FALSE); CalcShadowMat( mat); glPushMatrix(); glMultMatrixf(mat); draw(true); glPopMatrix(); glDepthMask(GL_TRUE); glDisable(GL_BLEND); } void setLight(){ float lightAmbient0[] = {0.5, 0.5, 0.5, 1.0}; //環境光 float lightDiffuse0[] = {1.0, 1.0, 1.0, 1.0}; //拡散光 float lightSpecular0[] = {1.0, 1.0, 1.0, 1.0};//鏡面光 glLightfv(GL_LIGHT0, GL_AMBIENT, lightAmbient0); glLightfv(GL_LIGHT0, GL_DIFFUSE, lightDiffuse0); glLightfv(GL_LIGHT0, GL_SPECULAR, lightSpecular0); glLightfv(GL_LIGHT0, GL_POSITION, lightpos); constAtt = 0.0f; linearAtt = 0.0f; quadraAtt = 1.0f / (lightpos[1] * lightpos[1]); glLightf(GL_LIGHT0, GL_CONSTANT_ATTENUATION, constAtt); glLightf(GL_LIGHT0, GL_LINEAR_ATTENUATION, linearAtt); glLightf(GL_LIGHT0, GL_QUADRATIC_ATTENUATION, quadraAtt); glEnable(GL_LIGHT0); glEnable(GL_LIGHTING); } void drawLight(void){ glDisable(GL_LIGHTING); glColor3f(0.8f, 0.8f, 0.0f); glPushMatrix(); glTranslatef(lightpos[0], lightpos[1], lightpos[2]); glutSolidSphere(0.1f, 10, 10); glPopMatrix(); glEnable(GL_LIGHTING); } void display(void){ glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glViewport(0, 0, WIDTH, HEIGHT); glMatrixMode(GL_PROJECTION); glLoadIdentity(); //視野角,アスペクト比(ウィンドウの幅/高さ),描画する範囲(最も近い距離,最も遠い距離) gluPerspective(30.0, (double)WIDTH / (double)HEIGHT, 1.0, 1000.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); //視点の設定 gluLookAt(10.0,10.0,-2.0, //カメラの座標 0.0,0.0,0.0, // 注視点の座標 0.0,1.0,0.0); // 画面の上方向を指すベクトル //ライトの設定 setLight(); drawLight(); glsl.ON(); draw(false); drawFloor(10.0, 10.0, 10, 10); drawShadow(); glsl.OFF(); glutSwapBuffers(); } void idle(void){ anglex+=2.0f; Sleep(1); glutPostRedisplay(); } void Init(){ glsl.InitGLSL( vertex.shader , flagment.shader ); glClearColor(1.0f, 1.0f, 1.0f, 1.0f); glEnable(GL_DEPTH_TEST); glEnable(GL_LIGHTING); glEnable(GL_LIGHT0); glEnable(GL_NORMALIZE); } void main(int argc, char *argv[]){ glutInitWindowPosition(100, 100); glutInitWindowSize(WIDTH, HEIGHT); glutInit( argc, argv); glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE); glutCreateWindow( 距離減衰 ); glutDisplayFunc(display); glutIdleFunc(idle); Init(); glutMainLoop(); return; }
https://w.atwiki.jp/psmovie/pages/715.html
Japanese com-ssa |Penspinnig Japanese com-ssa |Penspinnig 主催:fumin 編集:fumin 公開日:2018.2.6 JEBページ 出演者 debu(debued) Aroe Fall mi Taengoo Raphael Julia Spica Rai Malimo
https://w.atwiki.jp/qt_memo/pages/41.html
要素の取り出し 解説 takeAt()はQListから指定した位置の要素を取り出して返します(取り出した要素はQListから取り除かれます). takeFirst()はQListの先頭の要素を取り出して返します. takeLast()はQListの末尾の要素を取り出して返します. 定義は以下の通りです. T QList takeAt ( int i ) T QList takeFirst () T QList takeLast () 引数valueには挿入する値を指定します. 取り出した値が不要な場合はremoveAt(),removeFirst(),removeLast()を用いた方がわずかに処理速度が速くなります. 使用例 #include QTextCodec #include QTextStream #include QList int main(int argc, char *argv[]) {QTextCodec setCodecForTr(QTextCodec codecForLocale());QTextStream out(stdout); QList QString lst;lst "0" "1" "2" "3" "4"; // lst = ("0", "1", "2", "3", "4")QString str1 = lst.takeAt(2); // lst = ("0", "1", "3", "4")QString str2 = lst.takeFirst(); // lst = ("1", "3", "4")QString str3 = lst.takeLast(); // lst = ("1", "3")foreach(QString str, lst) {out str ","; }out "\n";return 0;} 出力 1,3,
https://w.atwiki.jp/earthquakeinfo_en/pages/25.html
How to spend Watch out for Hoaxes! To avoid Venous thrombosis (Better known as Economy Class Syndrome) at the Shelter. To keep warm. Caution about Carbon Monoxide (CO) poisoning How to spend ① If you are alone now, you should make companions. This comforts you and decreases your anxiety. ② It is desirable that youth and cheerful people make an effort to talk to the elderly and person/s that are on their own. ③ At times like this, all women should watch out for criminals. Yes - Japan is safe, but be cautious of your own safety. ④ When talking to others, give them a chance to speak out about their emotions. Talk about random stuff, trivial stuff, etc, to keep you and their minds off the earthquake. Watch out for Hoaxes! There are several hoax e-mails and tweets by heartless people about situations of the earthquake. DO NOT act upon these hoax. Instead, listen to reliable sources (e.g. Policeman, Defense Force people, radio and TV) for information. To avoid Venous thrombosis (Better known as Economy Class Syndrome) at the Shelter. move your fingers and toes frequently Move your heels up and down with both legs, 20 to 30 times every hour. Stretch as much as you can! Drink heaps of water. Don t avoid drinking water just because you re worried that you have to go to the toilet all the time! DO NOT EVEN THINK ABOUT DRINKING ALCOHOL! Cautions should be taken especially when you are staying inside a car. loosen belts or any items that may restrict blood flow. Lift your legs higher than your heart when you are lying down. What exactly is Venous thrombosis? A venous thrombosis is a blood clot that forms within a vein. (Thrombosis is a medical term for blood clotting (Haemostasis) occurring in the wrong place, i.e. a thrombus forming on the inside wall of a blood vessel.Wikipedia To keep warm. A plastic bottles with orange cap can withstand heat. If you have happened to secure hot water, they become good hot-water bottles, body warmers and water for drinking. Especially, it is useful for babies and elderly people who can t control their body temperature properly. Caution about Carbon Monoxide (CO) poisoning Because of power failure, many people are using oil-stoves and gas heaters, and the number of CO poisoning instances are INCREASING. Modern houses are very highly airtight, so think ventilation before you chuck that gas stove on.
https://w.atwiki.jp/musukure/pages/28.html
Windowsの場合 glut32.dll、glut.hを入手する cp glut32.dll c /windows/system32 cp glut.h c /MinGW/include/GL .proファイルの設定 QT += opengl # これはglutじゃなくてもGL使うなら普通に必要 win32 { LIBS += -lglut32 INCLUDEPATH += c /MinGW/include/GL } else { LIBS += -lglut INCLUDEPATH += /usr/include/GL }
https://w.atwiki.jp/wiki3_nab/pages/34.html
ちょっとメモ □インストール pkg_add -p /usr/local/pkg/openoffice pkgname - この方法はダメ。インストールフォルダは確かに変わるけど起動しない。 pkg_add pkgname - こっちで。。。
https://w.atwiki.jp/mpegonmac/pages/70.html
超未完成。 トップページ このサイトやソフトウェア等は自己責任で利用してください。 ソフトウェア利用の前に説明等をよく読みましょう。(ない場合とか知らない) ソフトウェア等の利用方法に違法性がないか十分に注意してください。 /* 何かいい情報があったら、ページの上/下部の「編集」をクリックして追加してください。その際は簡単な説明も添えて頂けるとありがたいです。 ただ、著作権等で問題がありそうな場合はリンク、その他の方法でお願いします。 */ コンテンツ 超未完成。 コンテンツ プレーヤー 編集QuickTime 編集 修正 その他編集 エンコーダraw2qt264(CUI) ffmpeg MEncoder Media Pipe MPEG-4(MP4) LAME/MP3 Audio Ogg Vorbis WMA 可逆圧縮・ロスレス オーディオ AC3(a52) その他エンコーダ 更新履歴 プレーヤー MPlayer (CUI) Linux のオープンソースなプレーヤー。エンコーダの MEncoder なども付属する。 MPlayer OSX MPlayer の GUI フロントエンド。 NicePlayer UI が Nice な、QuickTime ベースのプレーヤー。独自のプラグインに対応しており、Xine-NicePlayer plugin などがある。 しかも Core Video にも対応している。(Tiger以降のみ) QuickTime PlayerQuickTime 7.0.1 ReInstaller QuickTime 6.5.2 ReInstaller QuickTime サポートフォーマット QuickTime コンポーネント(QuickTime に機能を拡張する)QuickTime コンポーネントについては別ページで。 Player Ver.7で失われた機能を使う QuickTime Player は QuickTime ベースの Apple 純正マルチメディアプレーヤー。QuickTime Pro にアップグレードすることにより、多くの便利な機能が利用可能になる。 具体的には、 フルスクリーン等の再生機能の拡張 タイムライン操作+プレビュー付きの、ムービーのカット/結合 エンコード、フォーマット変換 クロップやトリム、アスペクト比の変更 字幕挿入、注釈(iTunes 対応)の挿入 等々…。個人的な意見だが、代金を払って Pro にする価値は十分にあると思う。Mac で動画編集をするのなら。 再生に関しては、MPlayer や VLC といったプレーヤーよりは劣る部分がある。ただし、QuickTime コンポーネントによって対応コーデックをカスタマイズすることができる。 Real Player Real 形式、QuickTime に対応したプレーヤー。 VLC 多数のフォーマットに対応したプレーヤー。Mac では、再生できないムービーはとりあえずこれか MPlayer を使えとよく言ったものです。 「MPlayerかVLCで」コメント省略用 Windows Media Player Windows Media Player いわゆる WMP の Mac 版。Windows Media Technologies 関連のフォーマットをサポートするが、AVI に格納された WMA や WMV は扱えない。Win 版 WMP 10 のようなライブラリ型管理機能もない。 Xine (CUI) Linux のオープンソースなプレーヤー。CD、DVD、VCD のほか、AVI、MOV、WMV、MP3 といったデジタルメディア、ストリーミングなどさまざまなマルチメディア関連技術に対応している。 Xine Player Xine の GUI フロントエンド。 編集 QuickTime QTCut? QuickTimeムービーの必要ない部分をカットして、多様なフォーマットで書き出すことができる。 QTCut公式サイト 紹介サイト QuickTime Broadcaster QuickTime Streaming Server QT nonPro コピー&ペーストの操作による QuickTime Movie の 簡単な編集、フルスクリーン再生。 QT Sync QuickTime Movie の映像と音声のズレを修正。 Sync-Hole QuickTime Movie の映像と音声のズレを修正。 Dumpster QuickTime Movie のヘッダ情報を表示/編集する。 音量、アスペクト比、トラック番号など。 QuickTag QuickTime Movie のタグを編集。 MakeRefMovie / MakeRefMovie X QuickTime Movie のネットワーク速度、CPU、言語などの情報を編集する。 QT HTML QuickTime Quick Batch MovCompare 編集 Avidemux AviTool mp4v と MP3 の AVI を作成。 mplexer MPEG を再編成(Multiplex)する。 Xplex MPEG を再編成(Multiplex)する。 bbDEMUX MPEG を分離(Demux)する。 MPEGPowerTool MPEG 編集ソフト。 mpgtx Batch Demuxer コマンドラインの MPEG 編集ソフト mpegtx の GUIフロントエンド。 mpgtx for Macintosh コマンドラインの MPEG 編集ソフト mpegtx の GUIフロントエンド。 Clip Creator 動画編集ソフト。 Explicit AVI を切り取る。 Simple Video Splicer 動画を切り取る。 MP3 Trimmer MP3 を切り取る。 Gumby SVCD Fixer (MPEG-2→MPEG AV, .mpg→.dat), MPEG カッター, PAL/NTSC, VCD/SVCD 作成, MPEG Fixer (Demux), サブタイトルコンバータ 等。 修正 SimpleCat II (Classic) ファイル単純結合、QuickTime でうまく再生できない MPEG を再生できるようにする。 実行前に MPEG のバックアップを。 CDXA2MPEG (Classic) QuickTime でうまく再生できない MPEG を再生できるようにする。 実行前に MPEG のバックアップを。 Drop MPEG here X QuickTime でうまく再生できない MPEG を再生できるようにする。 実行前に MPEG のバックアップを。 DivX Doctor II DivX AVI を 3ivx MOV 化。 DivX Tool うまく再生できない DivX AVI を再生できるようにする。 DivX Tool 2 うまく再生できない DivX AVI を再生できるようにする。 DivXWMAConverter DivX+WMA を DivX+MP3 にする。 Moth Aid Capty MPEG Edit で読み込めない MPEG-2 を、読み込めるように修正する。 その他編集 avi2mp3 AVI 内の MP3 を抽出。 avi2tiffX AVI の指定フレームを TIFF に出力。 AviFourCCChangerX AVI の FourCC を書き換える。 AAC変換 for iTunes AAC のファイルタイプを「m4b」に変更して、再生位置を記憶させるようにする。途中で次のトラックに移っても、次回再生時はその途中からスタートする。iPod でも再生位置は記憶され、再生スピードを変更することも可能になる。(Now Playing 画面で変更可能) iTunes 5.0 より「再生位置の記憶」が iTunes で設定できるようになった。 PullDownX フレームレート、アスペクト比の変更、rffフラグの挿入/削除など。 エンコーダ raw2qt264(CUI) raw2qt264コマンドライン。 下記のffmpegでデコードできる映像を、ターミナル上でQuickTimeのH.264 codecに渡してエンコード。 パス数指定可。ビットレート指定可。 インターレース解除、クロップなどffmpegの機能も使える。 ffmpeg ffmpeg (Unix) ffmpegXffmpegX 用 (mencoder, mplayer) ffmpegX 用 (mpeg2enc) ffmpegX 用 (Real-libs) 多機能エンコーダ ffmpegX の GUI フロントエンド。 映像 DV, MPEG-1/2, MPEG-TS, H.263/264, MS-MPEG-4, DivX3, XviD 音声 MP3, MP2, AC3, 3GP, PCM, AAC ffmpegX は日本語環境ではエラーが起こることがある為、Finder でアプリ本体を選択して、情報を表示、[言語:]に「Japanese」を追加する。 または、アプリ本体のパッケージを展開、手動で「Japanese.lproj」フォルダを作成する。 システム環境設定>言語 から「English」(英語環境)にするのでもいい。 ファイルを読み込む際に、パスには全角文字および(全角/半角の)スペース、特殊記号が含まれないこと。 Hostess UI 部分だけ。 ffmpeg 本体が含まれていないため、別途用意する必要がある。 MPEG Exporter TNG コマンドの直接入力も可。ffmpeg 本体は各自で用意。 MEncoder MEncoder(MPlayer 公式) なんかビデオフィルタとかいろいろある多機能エンコーダ。MPlayer プロジェクトに含まれる。GUI フロントエンドも存在するが、コマンドラインの方が更に細かな設定が可能。MEncoder について詳しくは MEncoder - ページリンク のリンク先。 mencoder OS X 更新止まってる? MEncoder の GUI フロントエンドの一つ。 AccelerCoder ffmpeg, MEncoder, avimerge のコントローラ部(?… エンジンの積まれていない自動車といったところか)。コマンドの直接入力も可能で、ネットワークを介して複数の Mac で動かすことも出来るらしい。 ただ、「エンジン」は入っていないので、利用には ffmpeg, mencoder, avimerge(transcode のうちの一つ) が必要。 これらは ffmpegX でインストール可。 D-Vision 多機能エンコーダ。OGM の Demux や AVI の切り取り/結合 等。x264(H.264 エンコーダ)搭載。 Media Pipe MediaPipe 「Pipe」と呼ばれるものを繋ぎ合わせてプロセスを作ってエンコードする、少し変わったもの。Automator に近いか? 更新が止まってる、エラー頻発、古い等の理由で流行らなかった(っていない)。。なんか勿体ないな orz Makira's homepage Pipe 配布サイト。 MPEG-4(MP4) OpenShiiva VOB→MP4 QuickTime に対応したコーデックと XviD が利用可能。字幕、色の設定など。 altShiiva OpenShiiva が元の MP4 エンコーダ。機能は OpenShiiva 0.8.9 とほぼ同じ。異なる点は、 日本語ファイルパスに対応 フレームレートの設定を追加 PSP用mp4書き出しに対応 Make Mine MPEG-4 QuickTime Pro で MP4 にエンコするように、いろいろ細かい設定が出来る。 QT MPEG4 Exporter ムービーを QuickTime, MPEG-4, 3GPP, 3GPP2, AMC, DV stream, AVI などの形式で出力。 LAME/MP3 Audio The LAME Project / LAME 日本語ページ ソースコードのダウンロード、情報など。 iTunes-LAME Encoder / iTunes-LAME Encoder (J) iTunes の Script メニューから利用する、LAME エンコーダ。 Let's encode with LAME iTunes から利用できる LAME エンコーダ。マルチバイト文字(日本語など)に対応。 こかこ〜だ LAME エンコ〜ダ。CarbonLib 1.1 以降の入った Mac OS か Mac OS X 10.1 以降で動作。 http //homepage.mac.com/gomataro/mysoft.html は消滅 NMP3 LAME エンコーダ。 BladeEnc for Mac (旧OS用) AIFF/Wave/raw PCM→MP3 Ogg Vorbis Xiph.Org home building a new era of Open multimedia The Mac OS X Guide to Ogg Vorbis OggDrop D D で Ogg にエンコード。 WMA EasyWMA (ffmpeg) WMA を AIFF, MP3 に変換。 Hyperion (ffmpeg) WMA を LAME MP3 に変換。 可逆圧縮・ロスレス オーディオ Apple Lossless Audio (ALAC) QuickTime 6.5.1 で導入された、可逆圧縮コーデック。iTunes 4.5 以上 iPod (3G=第三世代 以上 mini) に対応。 FLAC Windows, Unix (Linux, *BSD, Solaris, OS X, IRIX), BeOS, OS/2, Amiga など、幅広いプラットフォームに対応のフリーのロスレス・オーディオ コーデック。 FLAC の詳細、他コーデックとの比較、関連ツール群など。 FLAC Fink package FLAC 関連のファイルをインストール。コマンドライン。 FLACer FLAC エンコーダ。 Monkey's Audio Windows でよく使われる、オープンソースのロスレス・オーディオ コーデック。 Monkey's Audio for Mac OS X Mac OS X に移植した Monkey s Audio の SDK/エンコーダ/デコーダ/プレーヤを公開。 Mac で使える圧縮音声フォーマットスレ 688氏に感謝。 Shorten for Macintosh Shorten の Mac OS X 版。他 68k/OS 9, UNIX/Linux, BeOS 版も。 X Lossless Decoder Lossless audio decoder for Mac OS X FLAC, Monkey s Audio, WavPack, TTA, Apple Lossless 等、様々な可逆圧縮フォーマットをデコード可能。MP3, AAC, Ogg Vorbis に直接変換する事もできる。Cue シートを用いてトラック毎に分割する機能も搭載。 AC3(a52) a52decX AC3 を AIFF, LAME に変換する。a52dec の GUI フロントエンド。AIFF と LAME の出力機能を追加したもの。 bd4go AC3 を AIFF, Wave に変換。 mAC3dec AC3 を AIFF に変換。 その他エンコーダ AfroPic a52dec / bbdmux / ifogen / lame / movtowav / movtoy4m / mp2enc / mpgtx/ mplex / tocgen / vcdimager/ yuvdenoise / yuvscaler 実装。 mpeg2enc は別インストール。 (なんかScriptErrorで動きません!) DiVA Drop2DV ドラッグ&ドロップで MPEG, VOB を DV に変換。 ExportToQT MPEG1/MPEG2/VRO/ReplayTV/TiVo/VOB/HitachiVRO→QuickTime Movie Forty-Two DVD→AVI HandBrake DVD→AVI MEMO HandBrake - ページリンク MacMPEG2Decoder MPEG-2→QuickTime Movie OS 9 も可。 MissingMpegEdit MPEG-2 エディタ。カット/ペースト、調整と QuickTime Movie, MPEG-2, MPEG-4 などに書き出し。(QuickTime と連動?) MoreMissingTools MPEG の Demux/切り取り/結合/情報表示、ファイルの直接切り取り/結合(split/cat)、AC3→WAVE/MP2, MP2→WAVE, WAVE→MP2, MOV→WAVE, MOV→MPV, PCM→AIFF, リッピング、ビットレート計算、Multiplex など。 Movie2MPEG QuickTime Movie→MPEG-1 mpeg2decX MPEG-2→QuickTime Movie デインターレース、リサイズ・プレビュー、字幕抽出。 MPEG Streamclip MPEG の Demux やエンコードなど多機能。 MPEG-2 を扱う場合は QuickTime 6 MPEG-2 再生コンポーネント(有料)が必要。 MPEG2 Works AmadeusII Mac OS 8.6 以上、10.2 以上で動作する強力なサウンドエディタ。MP3, Ogg Vorbis, AAC エンコードサポート。 MacAmp / MacAmp Lite X は開発終了 → 無料配布 多くのフォーマットに対応した、高機能なプレーヤ。 N2MP3 多機能エンコーダ。LAME, OggVorbis, 録音機能など。 LameBrain AIFF from PCM PCM→AIFF BitVice_Helper AIFF/Wave→MP2 Spetial Thanks to このページ作ってくれた人 更新履歴 取得中です。
https://w.atwiki.jp/yosilove/pages/16.html
OpenALでビープ音を鳴らす-C C Mac OpenAL ソースコード 解説 最終更新日 2009-09-24 link_pdfプラグインはご利用いただけなくなりました。 ダウンロード View - MacOSXのOpenALでビープ音を鳴らすサンプル OpenALでビープ音を鳴らす-C ソースコードalert.c MakefileMac 実行方法 実行結果 テスト環境 Tanks ソースコード alert.c #include OpenAL/al.h #include OpenAL/alc.h #include math.h #include stdio.h #include unistd.h //sleep関数用 int main(){ ALCdevice *device; ALCcontext *context; ALshort data[22050]; ALuint buffer, source; int i; //デバイスを開く device = alcOpenDevice(NULL); //コンテキストを生成 context = alcCreateContext(device, NULL); //使用するコンテキストの指定 alcMakeContextCurrent(context); //バッファの生成 alGenBuffers(1, buffer); //信号を生成する for (i = 0; i 22050; ++i) { data[i] = sin(i * 3.14159 * 2 * 440 / 22050) * 32767; } //信号をバッファに入れる alBufferData(buffer, AL_FORMAT_MONO16, data, sizeof(data), 22050); //ソースを生成 alGenSources(1, source); //バッファからソースを作る alSourcei(source, AL_BUFFER, buffer); //ソースを再生する alSourcePlay(source); sleep(1); //お片づけ alSourceStop(source); alDeleteSources(1, source); alDeleteBuffers(1, buffer); alcMakeContextCurrent(NULL); alcDestroyContext(context); alcCloseDevice(device); return 0; } Makefile Mac CC = gcc -O2 -Wall FRAMEWORKS = -framework OpenAL .c $(CC) $@.c $(FRAMEWORKS) -o $@ 実行方法 コンパイルして make 実行 ./alert 実行結果 「ピー」と鳴ります。 テスト環境 MacOSX 10.5.8 gcc version 4.0.1 (Apple Inc. build 5493) OpenAL Tanks